/*******************************************************************************
 * 版权：北京润尼尔网络科技有限公司，保留所有版权<br>
 * 版本：v1.0.0<br>
 * 文件：UICompositeTooltip.js<br>
 * 日期：2016年8月9日<br>
 * 作者: 杨顺强<br>
 * 功能：<br>
 * 
 * 修改记录：<br>
 * 日期 描述 更新功能<br>
 ******************************************************************************/

window.makeNamespace(window,"Rainier.UI.V2");


/**
 * 类型名称：Rainier.UI.V2.UICompositeTooltip<br>
 * 类型功能：创建提示框<br>
 */
Rainier.UI.V2.UICompositeTooltip = Rainier.UI.V2.UIComposite.extend({
	
	NAME : 'Rainier.UI.V2.UICompositeTooltip',
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.init<br>
	 * 函数功能：构造函数<br>
	 * 参数输入：objParentComposite  	父组件实例<br>
	 * 参数输入：objProperties		 	组件属性定义<br>	
	 * 异常信息：<br>
	 */
	init : function(objParentComposite,objProperties){
		//使用父类初始化子类对象
		this._super(objParentComposite,objProperties);
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.appendEventHandler<br>
	 * 函数功能：添加事件代理<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：<br>
	 */
	appendEventHandler : function(){		
		this.m_aEventList = ['onShow','onHide','onUpdate','onPosition','onDestory'];
		this._super();
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.createComposite<br>
	 * 函数功能：创建组件<br>
	 * 参数输入：eleParent : 父组件的节点元素<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	createComposite : function(eleParent){
		this._super(eleParent);		
		var newEle = this.CreateElement("div",this.m_objProperties.id,null,{style:"width:30%;height:30%;margin:0 auto;background:#8DA8C3;"});
		eleParent.append(newEle);
		newEle.tooltip(this.m_objProperties);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.callUiMethod<br>
	 * 函数功能：添加事件代理<br>
	 * 参数输入：sMethod 方法名称
	 * 参数输入：objArgs 方法参数
	 * 函数返回：无<br>
	 * 异常信息：<br>
	 */
	callUiMethod : function(sMethod,objArgs){
		return this.getElement().tooltip(sMethod,objArgs);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.options<br>
	 * 函数功能：返回选项（options）属性（property）。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	options : function(){
		return this.getElement().tooltip('options');
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.tip<br>
	 * 函数功能：返回提示（tip）对象。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	tip : function(){
		return this.getElement().tooltip('tip');
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.arrow<br>
	 * 函数功能：返回箭头（arrow）对象。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	arrow : function(){
		return this.getElement().tooltip('arrow');
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.show<br>
	 * 函数功能：显示提示框（tooltip）。<br>
	 * 参数输入：e	<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	show : function(e){
		return this.getElement().tooltip('show',e);
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.hide<br>
	 * 函数功能：隐藏提示框（tooltip）。<br>
	 * 参数输入：e	<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	hide : function(e){
		return this.getElement().tooltip('hide',e);
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.update<br>
	 * 函数功能：更新提示框（tooltip）内容。<br>
	 * 参数输入：content		内容<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	update : function(content){
		return this.getElement().tooltip('update', content);
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.reposition<br>
	 * 函数功能：重置提示框（tooltip）位置。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	reposition : function(){
		return this.getElement().tooltip('reposition');
	},

	/**
	 * 函数名称：Rainier.UI.V2.UICompositeTooltip.destroy<br>
	 * 函数功能：销毁提示框（tooltip）。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	destroy : function(){
		return this.getElement().tooltip('destroy');
	}
});
